Recently, an information type of machine like personal computer, fax, scanner, printer, etc.; an A/V machine like TV, set-top box, DVD, VCR, audio, camcorder, game, etc.; and a control type of machine like coffee maker, electric rice-cooker, refrigerator, washer, microwave oven, camera, etc. have progressed to transmit and receive a variety of information through network.
These various machines used in network are connected as USB, IEEE1394, telephone line, power line, wireless LAN or Bluetooth. Generally, it is not easy to construct total network because various machines in network construct different sub-networks from each other, and each machine is operated in different hardware and software platforms from each other.
Thus, as a method of constructing the total network, it is proposed to construct a common imaginary computer environment called middleware in dispersed machines, and add an application thereto. The middleware is software for communication between different types of devices, and enables various machines to communicate in network. Also, the middleware is placed between operating system and application program, and transparently connects service client with application dispersed in service client and server environment, and dispersed data. UPnP, one of the middleware technology, was proposed in UPnP forum. The UPnP forum was established in Oct. 18, 1999, and is an association of about 200 companies in the fields of home appliance, computer, home automation, and mobile apparatus. This forum establishes and announces the standards of device and service on the basis of internet-based communication standard, and aims to control the devices by constructing a network in home or office simply and easily.
In case of the total network described above, a simple network to be able to construct a network as easily as possible is desirable because there are many cases in which separate network managers do not exist, and users do not know the network well. Especially, a method to control a client at the same time the client connects to a host has been studied. Also, web-sync and PC-sync technology have been used for processing information of multi-media device like cellular phone or MP3 player, or protecting copyright. These technologies are commonly provided through CD or separate storage media, in case of device driver, controlling S/W, and application S/W.
Recently, the performance of a terminal connected to wire or wireless internet is affected by a firmware that is a middle level of hardware and software, as well as having hardware feature and software feature, and the main function of the terminal is embodied as software or firmware. Since software and firmware having a variety of functions are linked and operated, and so unexpected errors of software or firmware that were not shown in a developing stage are shown when users use it. To recover from these errors, previously in the art, users had to directly download a cure file from the homepage of a device manufacturing company, or directly find and update a distribution version file.
Also, new function can be added to a terminal by using software or firmware only, without changing hardware, and so updating of software and firmware is frequently made. Thus, a new technology to automatically perform update of software and firmware has been required.
Moreover, in upgrading firmware, since program down module needed for upgrade is included in a firmware image upgraded. Thus, if upgrading fails, the program down module cannot be operated. In the case, special tool, like JTAG, ROM writer, etc., is needed for recovering it. That is, the above kind of firmware is generally stored in mask ROM in a controller set in a terminal. As is well-known, the mask ROM is a memory in which contents are already recorded in a manufacturing process, and the contents cannot be changed by users. Thus, if a semiconductor company manufactures a new type or standard of memory, a preexisting controller in the art cannot support the new memory because of the mask ROM. Also, it is impossible to modify or upgrade firmware.
Further, to update firmware, users had to directly visit A/S center or connect to the homepage.